1. Field of the Invention
The present invention is related to data transmission in a computer network, and more particularly to a unique data push technology where data is transmitted to recipients according to a particular state of the intended recipients.
2. Description of Prior Art
The standard client-server information push model is not efficient for pervasive computing (PvC) entities, which for the most part are disconnected from the network. Servers uselessly attempting to push data to disconnected clients waste resources, such as the CPU, the RAM, and the network bandwidth in the process.
Push
In a standard push model, such as HTTP Push, a given push source server (PSS) sends out new information to all subscribed clients. This works well in networks where clients are actively connected to the network most of the time and the network has sufficient bandwidth for the transmission. Such clients are able to receive the transmissions. However, because PvC devices are mostly disconnected from the network, this model fails since the majority of the transmissions will fail.
Push source servers may attempt to avoid transmissions to disconnected clients by checking the availability of the target clients before each transmission. This approach still results in heavy network load due to the large number of status checking probes.
Pull
If any given client machine was forced to request all information sent to it, e.g., using the HTTP GET request, then every data transmission would be guaranteed to be sent to an available client. The problem with the pull scenario is that because there is no way for a given client to know when or if a given source server has any new information, the client is forced to make many unnecessary pull requests to ensure that any and all new information is retrieved. This will result in a heavy network load due to the large number of unnecessary pull requests.
Poll
Yet another approach, similar to the pull technique, is polling, like that used by the PointCast Network http://www.pointcast.com, an Internet news service broadcasting personalized news and information directly to clients' computer screens. In polling, just as with the pull approach, additional network load is created by clients having to continually request information from source servers, even when no new information is in fact available, to ensure that any and all new data is retrieved.
Since PvC entities are already bandwidth-challenged, there remains a need for a way to enable an automated delivery of information, especially for that which is critical, yet only infrequently provided, such as bug fixes or virus checker updates.